#pragma once

//#include <istream>
//#include "../common/tcp_base_common_type.h"


//namespace send_protocol
//{
//	#pragma pack(push, 1)
//
//	///////////////////////////////////////////////////////////////////////////////////
//	//
//
//	struct req_login
//	{
//		enum flag_e : short { ok, already, error };
//		flag_e result;
//		account_unique_t unique_id;
//	};
//
//	extern std::ostream& operator<<(std::ostream& stream, req_login const& packet);
//
//	///////////////////////////////////////////////////////////////////////////////////
//	//
//
//	struct req_logout
//	{
//		enum flag_e : short{ ok, error };
//		flag_e result;
//	};
//
//	extern std::ostream& operator<<(std::ostream& stream, req_logout const& packet);
//
//	///////////////////////////////////////////////////////////////////////////////////
//	//
//
//	struct req_make_stage
//	{
//		enum flag_e : short{ ok, error };
//		flag_e result;
//		stage_id_t stage_id;
//	};
//
//	extern std::ostream& operator<<(std::ostream& stream, req_make_stage const& packet);
//
//	///////////////////////////////////////////////////////////////////////////////////
//	//
//
//	struct req_join_stage
//	{
//		enum flag_e : short{ ok, error };
//		flag_e result;
//		short team_id;
//	};
//
//	extern std::ostream& operator<<(std::ostream& stream, req_join_stage const& packet);
//
//	///////////////////////////////////////////////////////////////////////////////////
//	//
//
//	struct req_leave_stage
//	{
//		enum flag_e : short{ ok, error };
//		flag_e result;
//	};
//
//	extern std::ostream& operator<<(std::ostream& stream, req_leave_stage const& packet);
//
//	///////////////////////////////////////////////////////////////////////////////////
//	//
//
//	struct req_start_stage
//	{
//		enum flag_e : short{ ok, error };
//		flag_e result;
//		short player_count;
//	};
//
//	extern std::ostream& operator<<(std::ostream& stream, req_start_stage const& packet);
//
//	///////////////////////////////////////////////////////////////////////////////////
//	//
//
//	struct req_update_stage
//	{
//		short command[common_config::max_stage_player_count];
//		unsigned int frame_count;
//	};
//
//	extern std::ostream& operator<<(std::ostream& stream, req_update_stage const& packet);
//
//	///////////////////////////////////////////////////////////////////////////////////
//	//
//
//	struct req_end_stage
//	{
//		enum flag_e : short{ ok, error };
//		flag_e result;
//	};
//
//	extern std::ostream& operator<<(std::ostream& stream, req_end_stage const& packet);
//
//	///////////////////////////////////////////////////////////////////////////////////
//	//
//
//	struct max {};
//
//	///////////////////////////////////////////////////////////////////////////////////
//
//	#pragma pop
//}
//
//#include "send_protocol_ids.hpp"
